package com.qf.pojo;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.util.Date;

@Data
//如果实体名和表名是一致的，那么可以不使用这个注解设置表名。如果不一致，必须使用这个注解设置与之对应的表名
@TableName("student")
public class Student {

    //如果表中id列的名字不是id，必须哦通过这个注解标识这个属性是表中的id列
    /*
        注解中type属性，指定数据库id值的生成策略
            IdType.AUTO： 基于数据库自增，数据库的id列必须设置auto_increment
            IdType.INPUT: 用户自己输入id值，在进行添加操作时，必须手动给id赋值
            IdType.ASSIGN_UUID: 基于uuid生成随机字符串作为id值
            IdType.ASSIGN_ID: 基于雪花算法生成id值
     */
//    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    //如果属性名和表中列名一致，可以不设置。如果不一致，需要设置与之对应的列名
    @TableField("name")
    private String name;
    private Integer age;
    private String gender;
    private Double score;

    //前台需要的额外业务数据支撑，在表中没有与之对应的列
    //设置@TableField(exist = false)，告诉mybatisplus，这个属性和表中列无关
    @TableField(exist = false)
    private Date bir;

//    @TableLogic(value = "0",delval = "1")
    private Integer logicDel;

    //标识这个字段是做乐观锁的版本号使用
    @Version
    private Integer version;
}
